package com.ruoyi.dispatch.domain;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import java.util.Map;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 产量日报对象 dispatch_workface_day_report
 * 
 * @author wuxiaofang
 * @date 2025-04-08
 */
@ApiModel(value = "UserEntity", description = "产量日报实体")
public class WorkfaceDayReport extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    private Long reportId;

    /** 日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @ApiModelProperty(name="日期",notes = "yyyy-MM-dd",example = "2025-04-09")
    @Excel(name = "日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date currentDate;

    /** 工作面 ID */
    @Excel(name = "工作面 ID")
    private Long workfaceId;

    /** 工作面名称 */
    @Excel(name = "工作面名称")
    @ApiModelProperty("工作面名称")
    private String workfaceName;

    /** 队组 ID */
    @Excel(name = "队组 ID")
    private Long miningTeamId;

    /** 队组名称 */
    @Excel(name = "队组名称")
    @ApiModelProperty("队组名称")
    private String miningTeamName;

    /** 设计长度 */
    @Excel(name = "设计长度")
    @ApiModelProperty("设计长度")
    private Double workLength;

    /** 采煤方法 */
    @Excel(name = "采煤方法")
    @ApiModelProperty("采煤方法")
    private String miningMethod;

    /** 下井人数 */
    @Excel(name = "下井人数")
    @ApiModelProperty("下井人数")
    private Long inMinePersonNum;

    /** 实际产量（t） */
    @Excel(name = "实际产量", readConverterExp = "t=")
    @ApiModelProperty("实际产量")
    private BigDecimal yield;

    /** 计划产量（t） */
    @Excel(name = "计划产量", readConverterExp = "t=")
    @ApiModelProperty("计划产量")
    private BigDecimal dayPlan;

    /** 当日推进（m） */
    @Excel(name = "当日推进", readConverterExp = "m=")
    @ApiModelProperty("当日推进")
    private Double pdscDayLength;

    /** 矿井 ID */
    private Long mineId;

    /** 矿井名称 */
    @Excel(name = "矿井名称")
    private String mineName;

    /** 排序 */
    private Long sort;

    public void setReportId(Long reportId) 
    {
        this.reportId = reportId;
    }

    public Long getReportId() 
    {
        return reportId;
    }

    public void setCurrentDate(Date currentDate) 
    {
        this.currentDate = currentDate;
    }

    public Date getCurrentDate() 
    {
        return currentDate;
    }

    public Long getWorkfaceId() {
        return workfaceId;
    }

    public void setWorkfaceId(Long workfaceId) {
        this.workfaceId = workfaceId;
    }

    public void setWorkfaceName(String workfaceName)
    {
        this.workfaceName = workfaceName;
    }

    public String getWorkfaceName() 
    {
        return workfaceName;
    }

    public void setMiningTeamId(Long miningTeamId) 
    {
        this.miningTeamId = miningTeamId;
    }

    public Long getMiningTeamId() 
    {
        return miningTeamId;
    }

    public void setMiningTeamName(String miningTeamName) 
    {
        this.miningTeamName = miningTeamName;
    }

    public String getMiningTeamName() 
    {
        return miningTeamName;
    }

    public void setWorkLength(Double workLength)
    {
        this.workLength = workLength;
    }

    public Double getWorkLength()
    {
        return workLength;
    }

    public void setMiningMethod(String miningMethod) 
    {
        this.miningMethod = miningMethod;
    }

    public String getMiningMethod() 
    {
        return miningMethod;
    }

    public void setInMinePersonNum(Long inMinePersonNum) 
    {
        this.inMinePersonNum = inMinePersonNum;
    }

    public Long getInMinePersonNum() 
    {
        return inMinePersonNum;
    }

    public void setYield(BigDecimal yield)
    {
        this.yield = yield;
    }

    public BigDecimal getYield()
    {
        return yield;
    }

    public void setDayPlan(BigDecimal dayPlan)
    {
        this.dayPlan = dayPlan;
    }

    public BigDecimal getDayPlan()
    {
        return dayPlan;
    }

    public void setPdscDayLength(Double pdscDayLength)
    {
        this.pdscDayLength = pdscDayLength;
    }

    public Double getPdscDayLength()
    {
        return pdscDayLength;
    }

    public void setMineId(Long mineId) 
    {
        this.mineId = mineId;
    }

    public Long getMineId() 
    {
        return mineId;
    }

    public void setMineName(String mineName) 
    {
        this.mineName = mineName;
    }

    public String getMineName() 
    {
        return mineName;
    }

    public void setSort(Long sort) 
    {
        this.sort = sort;
    }

    public Long getSort() 
    {
        return sort;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("reportId", getReportId())
            .append("currentDate", getCurrentDate())
            .append("workfaceId", getWorkfaceId())
            .append("workfaceName", getWorkfaceName())
            .append("miningTeamId", getMiningTeamId())
            .append("miningTeamName", getMiningTeamName())
            .append("workLength", getWorkLength())
            .append("miningMethod", getMiningMethod())
            .append("inMinePersonNum", getInMinePersonNum())
            .append("yield", getYield())
            .append("dayPlan", getDayPlan())
            .append("pdscDayLength", getPdscDayLength())
            .append("mineId", getMineId())
            .append("mineName", getMineName())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .append("sort", getSort())
            .toString();
    }
}
